package com.priox.sigar.application.mappers;

import com.googlecode.ehcache.annotations.Cacheable;
import com.priox.sigar.client.dto.AcreedorSociedadDTO;
import com.priox.sigar.client.dto.SociedadDTO;
import com.priox.sigar.client.flt.SociedadFlt;

import java.util.List;

public interface SociedadMapper {

    List<SociedadDTO> findByGrupoEmpresarialId(Long grupoEmpresarialId);

    @Cacheable(cacheName = "findBySociedadId")
    SociedadDTO findBySociedadId(String sociedadId);

    List<SociedadDTO> findByFilter(SociedadFlt filtroBusqueda);

    int sociedadByNombre(String nombre);

    List<SociedadDTO> findAll();

    List<AcreedorSociedadDTO> findBySociedadAcreedorId(String acreedorId);

    List<SociedadDTO> findBySociedadClienteId(String clienteId);

}
